home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 July / 07_02.iso / software / xq-xsetup / files / setup.exe / {app} / plugins / XQ WinXP Start Menu 4.xpl < prev    next >
Text File  |  2002-01-01  |  4KB  |  109 lines

  1. "FILE"="Xteq Systems X-Setup Plugin 6.0"
  2. "TYPE"="9"
  3. "COUNT"="1"
  4. "UIPATH 1"="Appearance\Start menu\Windows XP\Classic Start Menu"
  5. "NAME"="Cascaded Special Folders"
  6. "VERSION"="2.00"
  7. "LANGUAGE"="VBScript"
  8. "OSVERSION"="000001"
  9. "DESCRIPTION 1"="Use this plug-in to show some of the "special" folder of Window in cascading menu so you can easily access them. These items will appear on top of your Start Menu or inside the menu "All Programs" if you use the new (two columns) Start Menu in Windows XP."
  10. "DESCRIPTION 2"="NOTE: Do not activate ANY of these options if you are using an HP OfficeJet and want to use the scanner software that comes with it. It seems the software of this HP Combo does not like the directories X-Setup creates."
  11. "AUTHOR"="Xteq Systems"
  12. "CONTACTURL"="http://www.xteq.com"
  13. "COPYRIGHT"="Copyright ⌐ Xteq Systems - All Rights Reserved"
  14. "COMMENT 1"="IE6+ fix found by Neil T."
  15.  
  16.  
  17. 'Declaration of some constants
  18. sP="HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Start Menu"
  19. sPath=""
  20.  
  21.   sV1="Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}"
  22.        sV2="Printers.{2227A280-3AEA-1069-A2DE-08002B30309D}"
  23.     sV3="Recycle Bin.{645FF040-5081-101B-9F08-00AA002F954E}"
  24. sV4="Scheduled Tasks.{D6277990-4C6A-11CF-8D87-00AA0060F5BF}"
  25.         sV5="History.{FF393560-C2A7-11CF-BFF4-444553540000}"
  26.        sV5file="History.{FF393560-C2A7-11CF-BFF4-444553540000}\desktop.ini"
  27.   sV6="Subscriptions.{F5175861-2688-11D0-9C5E-00AA00A45957}"
  28.  
  29. 'Called when the Plugin is started
  30. SUB Plugin_Initialize 
  31.  sPath=RegReadValue(sP)
  32.  if FolderExists(sPath) then
  33.     if right(sPath,1)<>"\" then sPath=sPath & "\"
  34.  
  35.     Call SetUIElement(1,"Show cascading 'Control Panel' in Start menu")
  36.     Call ReadIt(1,sPath & sV1)
  37.  
  38.     Call SetUIElement(2,"Show cascading 'Printers' in Start menu")
  39.     Call ReadIt(2,sPath & sV2)
  40.  
  41.     Call SetUIElement(3,"Show cascading 'Recycle Bin' in Start menu")
  42.     Call ReadIt(3,sPath & sV3)
  43.  
  44.     Call SetUIElement(4,"Show cascading 'Scheduled Tasks' in Start menu")
  45.     Call ReadIt(4,sPath & sV4)
  46.  
  47.     Call SetUIElement(5,"Show cascading 'History' in Start menu")
  48.     Call ReadIt(5,sPath & sV5)
  49.  
  50.     Call SetUIElement(6,"Show cascading 'Subscriptions' in Start menu")
  51.     Call ReadIt(6,sPath & sV6)
  52.  else
  53.     Disable
  54.  end if
  55.  
  56. END SUB
  57.  
  58. 'Called when the Plugin should validate the Data the user has entered
  59. SUB Plugin_CheckData(ElementIndex)
  60. END SUB
  61.  
  62. 'Called when the Plugin should apply the changes
  63. SUB Plugin_Apply(ElementIndex,ElementSubIndex) 
  64.  Call WriteIt(1, sPath & sV1)
  65.  Call WriteIt(2, sPath & sV2)
  66.  Call WriteIt(3, sPath & sV3)
  67.  Call WriteIt(4, sPath & sV4)
  68.  
  69.  'IE6+ fix!
  70.  If GetUIElementEx(5)=true then
  71.     Call WriteIt(5, sPath & sV5)
  72.     Call IniWriteValue(sPath & sV5file,".ShellClassInfo","UICLSID","{7BD29E00-76C1-11CF-9DD0-00A0C9034933}")
  73.     Call FileSetAttribute(sPath & sV5file,"H+") 
  74.  else
  75.     If FileExists(sPath & sV5file) then
  76.        Call FileSetAttribute(sPath & sV5file,"H-") 
  77.        Call FileDelete(sPath & sV5file)
  78.     end if
  79.     Call WriteIt(5, sPath & sV5)
  80.  end if
  81.  
  82.  Call WriteIt(6, sPath & sV6)
  83.  
  84.  
  85. END SUB
  86.  
  87.  
  88. 'Called when the Plugin is about to be removed from memory
  89. SUB Plugin_Terminate
  90. END SUB
  91.  
  92.  
  93. Sub ReadIt(ITEM,FILENAME)
  94.  if FolderExists(FILENAME) then 
  95.     Call SetUIElementEx(ITEM,true)
  96.  end if
  97. End Sub
  98.  
  99. Sub WriteIt(ITEM,FILENAME)
  100.  if GetUIElementEx(ITEM)=true then
  101.     if FolderExists(FILENAME)=false then
  102.        Call FolderCreate(FILENAME)
  103.     end if
  104.  else
  105.     if FolderExists(FILENAME)=true then       
  106.        Call FolderDelete(FILENAME)
  107.     end if
  108.  end if
  109. End Sub